/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package persistencia;

import java.lang.reflect.Array;
import java.util.ArrayList;
import java.util.List;
import modelos.Avaliacao;
import modelos.Disciplina;
import modelos.ExeMultiplaEscolha;
import modelos.Exercicio;
import modelos.Pessoa;

/**
 *
 * @author Marcelo
 */
public class CadastrosIniciais {

    private List<Exercicio> listaTodosExes;

    public void inicializaApp(Database db){

         listaTodosExes = new ArrayList<Exercicio>();
         db.setDisciplinas(listaDisciplinas());
         db.setExercicios(listaTodosExes);
         db.setUsuarios(listaUsers());
         db.setAvaliacoes(new ArrayList<Avaliacao>());

    }

    public List<Pessoa> listaUsers(){

        List<Pessoa> listaUsers = new ArrayList<Pessoa>();

        Pessoa p = new Pessoa();
        p.setNome("aluno");
        p.setNomeCompleto("Aluno Da Silva");
        p.setTipo(1);
        listaUsers.add(p);
        p = new Pessoa();
        p.setNome("Professor");
        p.setNomeCompleto("Professor Lemos Pinto");
        p.setTipo(2);
        listaUsers.add(p);
        return listaUsers;

    }

    public List<Disciplina> listaDisciplinas()
    {
        List<Disciplina> listaDisc = new ArrayList<Disciplina>();
        Disciplina disc = new Disciplina();
        disc.setNome("Português");
        disc.setExercicios(listaExercicios("Português"));
        listaDisc.add(disc);
        disc = new Disciplina();
        disc.setNome("Matemática");
        disc.setExercicios(listaExercicios("Matemática"));
        listaDisc.add(disc);
        disc = new Disciplina();
        disc.setNome("Ciências");
        disc.setExercicios(listaExercicios("Ciências"));
        listaDisc.add(disc);
        disc = new Disciplina();
        disc.setNome("E. Religioso");
        disc.setExercicios(listaExerciciosExtra());
        listaDisc.add(disc);

        return listaDisc;
    }

    public List<Exercicio> listaExercicios(String titulo)
    {
        List<Exercicio> listaExes = new ArrayList<Exercicio>();
        ExeMultiplaEscolha exe = new ExeMultiplaEscolha();
        exe.setEnunciado("Alguma pergunta referente ao exercício 1");
        exe.setTitulo(titulo + "1");
        exe.setResolucao("Alternativa1");
        exe.setAlternativas(new ArrayList<String>());
        exe.getAlternativas().add("Alternativa1");
        exe.getAlternativas().add("Alternativa2");
        exe.getAlternativas().add("Alternativa3");
        exe.getAlternativas().add("Alternativa4");
        exe.getAlternativas().add("Alternativa5");
        listaExes.add(exe);
        exe = new ExeMultiplaEscolha();
        exe.setEnunciado("Alguma pergunta referente ao exercício 2");
        exe.setTitulo(titulo + "2");
        exe.setResolucao("Alternativa2");
        exe.setAlternativas(new ArrayList<String>());
        exe.getAlternativas().add("Alternativa1");
        exe.getAlternativas().add("Alternativa2");
        exe.getAlternativas().add("Alternativa3");
        exe.getAlternativas().add("Alternativa4");
        exe.getAlternativas().add("Alternativa5");
        listaExes.add(exe);
        exe = new ExeMultiplaEscolha();
        exe.setEnunciado("Alguma pergunta referente ao exercício 3");
        exe.setTitulo(titulo + "3");
        exe.setResolucao("Alternativa3");
        exe.setAlternativas(new ArrayList<String>());
        exe.getAlternativas().add("Alternativa1");
        exe.getAlternativas().add("Alternativa2");
        exe.getAlternativas().add("Alternativa3");
        exe.getAlternativas().add("Alternativa4");
        exe.getAlternativas().add("Alternativa5");
        listaExes.add(exe);

        listaTodosExes.addAll(listaExes);

        return listaExes;
    }

    public List<Exercicio> listaExerciciosExtra()
    {
        List<Exercicio> listaExes = new ArrayList<Exercicio>();
        ExeMultiplaEscolha exe = new ExeMultiplaEscolha();
        exe.setEnunciado("Complete com a alternativa correta: ABAC_TE.");
        exe.setTitulo("Complete com a letra Certa");
        exe.setResolucao("a - vogal");
        exe.setAlternativas(new ArrayList<String>());
        exe.getAlternativas().add("a - vogal");
        exe.getAlternativas().add("i - consoante");
        exe.getAlternativas().add("e - vogal");
        exe.getAlternativas().add("o - consoante");
        exe.getAlternativas().add("a - consoante");
        listaExes.add(exe);
        exe = new ExeMultiplaEscolha();
        exe.setEnunciado("Alexandre tem 2 maçãs, Ramos tem 4 maçãs e Marisa mais uma caixa com 27 maçãs. Quantas maçãs temos no total?");
        exe.setTitulo("Problema das maçãs");
        exe.setResolucao("33");
        exe.setAlternativas(new ArrayList<String>());
        exe.getAlternativas().add("29");
        exe.getAlternativas().add("30");
        exe.getAlternativas().add("32");
        exe.getAlternativas().add("33");
        exe.getAlternativas().add("35");
        listaExes.add(exe);
        exe = new ExeMultiplaEscolha();
        exe.setEnunciado("Quantas letras (sem contar as repetições) tem a palavra ADVOGADO?");
        exe.setTitulo("Problema palavra Advogado");
        exe.setResolucao("5");
        exe.setAlternativas(new ArrayList<String>());
        exe.getAlternativas().add("1");
        exe.getAlternativas().add("3");
        exe.getAlternativas().add("4");
        exe.getAlternativas().add("5");
        exe.getAlternativas().add("7");
        listaExes.add(exe);
        exe = new ExeMultiplaEscolha();
        exe.setEnunciado("O meu pai trabalha 8 horas por dia durante 5 dias da semana. Em 3 semanas quantas horas ele trabalhou?");
        exe.setTitulo("Problema horas em um mês");
        exe.setResolucao("120");
        exe.setAlternativas(new ArrayList<String>());
        exe.getAlternativas().add("8");
        exe.getAlternativas().add("40");
        exe.getAlternativas().add("120");
        exe.getAlternativas().add("32");
        exe.getAlternativas().add("15");
        listaExes.add(exe);
        
        listaTodosExes.addAll(listaExes);

        return listaExes;
    }

}
